namespace CSharpPro._0928;

public class Demo
{
   public void TestPrint4()
   {
      Console.WriteLine("1000以内的水仙花数有：");
      // 遍历100到999之间的数（因为水仙花数是三位数）
      for (int i = 100; i < 1000; i++)
      {
         int hundreds = i / 100; // 百位数字
         int tens = (i / 10) % 10; // 十位数字
         int units = i % 10; // 个位数字
         // 判断是否为水仙花数
         if (Math.Pow(hundreds, 3) + Math.Pow(tens, 3) + Math.Pow(units, 3) == i)
         {
            Console.WriteLine(i);
         }
      }
   }

   public void TestPrint5()
   {
      Console.WriteLine("100以内的质数有：");
      // 从2开始遍历到100（因为1不是质数）
      for (int i = 2; i <= 100; i++)
      {
         bool isPrime = true;
         // 遍历2到i的平方根，判断是否有因数
         for (int j = 2; j * j <= i; j++)
         {
            if (i % j == 0)
            {
               isPrime = false;
               break;
            }
         }
         if (isPrime)
         {
            Console.WriteLine(i);
         }
      }
   }
}